package com.smarttest.common.beans.protolcol.can;

import java.io.Serializable;

/**
 * @desc    CAN实时查询应答
 * @author  dingpeng@huoyunren.com
 * @since   2016/3/10
 *
 */
public class CanRealtimeAns implements Serializable {
    private static final long serialVersionUID = 3607844896367838988L;

    /**采集时间*/
    private String gatherTime;

    /**ON线状态*/
    private int onLineStatus;

    /**压缩机线状态*/
    private int compressorLineStatus;

    /**门磁线状态*/
    private int magnetometerLineStatus;

    /**硬件版本号*/
    private String hdVer;

    /**软件版本*/
    private String softVer;

    /**协议版本号*/
    private String protocolVer;

    /**EMS总线配置状态 Bit0:CAN0*/
    private int emsBusCfgStatusCAN0;

    /**EMS总线配置状态 Bit1:CAN1*/
    private int emsBusCfgStatusCAN1;

    /**EMS总线配置状态 Bit2:K线*/
    private int emsBusCfgStatusKline;

    /**EMS总线配置状态 Bit3:RS485线*/
    private int emsBusCfgStatusRs485Line;

    /**EMS总线原始数据获取状态 Bit0:CAN0*/
    private int emsOrgiDataGetStatusCAN0;

    /**EMS总线原始数据获取状态 Bit1:CAN1*/
    private int emsOrgiDataGetStatusCAN1;

    /**EMS总线原始数据获取状态 Bit2:K线*/
    private int emsOrgiDataGetStatusKline;

    /**EMS总线原始数据获取状态 Bit3:RS485线*/
    private int emsOrgiDataGetStatusRs485Line;

    /**Engine Speed 转速*/
    private int engineSpeed;

    /**Engine Fuel Rate发动机瞬时油耗*/
    private double engineFuelRate;

    /**Engine Total Fuel Used 发动机总油耗*/
    private double engineTotalFuelUsed;

    /**Brake Switch刹车*/
    private int brakeSwitch;

    /**Wheel-Based Vehicle Speed 车速*/
    private int wheelBasedVehicleSpeed;

    /**Total Vehicle Distance总里程*/
    private double totalVehicleDistance;

    /**Throttle valve节流阀（油门强度）*/
    private int throttleValve;

    /**Engine coolant temperature发动机冷却液温度*/
    private int engineCoolantTemperature;

    /**Fuel pressure燃油压力*/
    private int fuelPressure;

    /**Manifold absolute pressure进气歧管绝对压力*/
    private double manifoldAbsolutePressure;

    /**The engine inlet temperature发动机进气口温度*/
    private int theEngineInletTemperature;

    /**Air flow空气流量*/
    private double airFlow;

    /**Solar term door position sensor节气门位置传感器*/
    private int solarTermDoorPositionSensor;

    /**发动机启动后运行时间*/
    private long engineRuntimes;

    /**冲程油量*/
    private int travelOilMass;

    public CanRealtimeAns() {
    }

    public String getGatherTime() {
        return gatherTime;
    }

    public void setGatherTime(String gatherTime) {
        this.gatherTime = gatherTime;
    }

    public int getOnLineStatus() {
        return onLineStatus;
    }

    public void setOnLineStatus(int onLineStatus) {
        this.onLineStatus = onLineStatus;
    }

    public int getCompressorLineStatus() {
        return compressorLineStatus;
    }

    public void setCompressorLineStatus(int compressorLineStatus) {
        this.compressorLineStatus = compressorLineStatus;
    }

    public int getMagnetometerLineStatus() {
        return magnetometerLineStatus;
    }

    public void setMagnetometerLineStatus(int magnetometerLineStatus) {
        this.magnetometerLineStatus = magnetometerLineStatus;
    }

    public String getHdVer() {
        return hdVer;
    }

    public void setHdVer(String hdVer) {
        this.hdVer = hdVer;
    }

    public String getSoftVer() {
        return softVer;
    }

    public void setSoftVer(String softVer) {
        this.softVer = softVer;
    }

    public String getProtocolVer() {
        return protocolVer;
    }

    public void setProtocolVer(String protocolVer) {
        this.protocolVer = protocolVer;
    }

    public int getEmsBusCfgStatusCAN0() {
        return emsBusCfgStatusCAN0;
    }

    public void setEmsBusCfgStatusCAN0(int emsBusCfgStatusCAN0) {
        this.emsBusCfgStatusCAN0 = emsBusCfgStatusCAN0;
    }

    public int getEmsBusCfgStatusCAN1() {
        return emsBusCfgStatusCAN1;
    }

    public void setEmsBusCfgStatusCAN1(int emsBusCfgStatusCAN1) {
        this.emsBusCfgStatusCAN1 = emsBusCfgStatusCAN1;
    }

    public int getEmsBusCfgStatusKline() {
        return emsBusCfgStatusKline;
    }

    public void setEmsBusCfgStatusKline(int emsBusCfgStatusKline) {
        this.emsBusCfgStatusKline = emsBusCfgStatusKline;
    }

    public int getEmsBusCfgStatusRs485Line() {
        return emsBusCfgStatusRs485Line;
    }

    public void setEmsBusCfgStatusRs485Line(int emsBusCfgStatusRs485Line) {
        this.emsBusCfgStatusRs485Line = emsBusCfgStatusRs485Line;
    }

    public int getEmsOrgiDataGetStatusCAN0() {
        return emsOrgiDataGetStatusCAN0;
    }

    public void setEmsOrgiDataGetStatusCAN0(int emsOrgiDataGetStatusCAN0) {
        this.emsOrgiDataGetStatusCAN0 = emsOrgiDataGetStatusCAN0;
    }

    public int getEmsOrgiDataGetStatusCAN1() {
        return emsOrgiDataGetStatusCAN1;
    }

    public void setEmsOrgiDataGetStatusCAN1(int emsOrgiDataGetStatusCAN1) {
        this.emsOrgiDataGetStatusCAN1 = emsOrgiDataGetStatusCAN1;
    }

    public int getEmsOrgiDataGetStatusKline() {
        return emsOrgiDataGetStatusKline;
    }

    public void setEmsOrgiDataGetStatusKline(int emsOrgiDataGetStatusKline) {
        this.emsOrgiDataGetStatusKline = emsOrgiDataGetStatusKline;
    }

    public int getEmsOrgiDataGetStatusRs485Line() {
        return emsOrgiDataGetStatusRs485Line;
    }

    public void setEmsOrgiDataGetStatusRs485Line(int emsOrgiDataGetStatusRs485Line) {
        this.emsOrgiDataGetStatusRs485Line = emsOrgiDataGetStatusRs485Line;
    }

    public int getEngineSpeed() {
        return engineSpeed;
    }

    public void setEngineSpeed(int engineSpeed) {
        this.engineSpeed = engineSpeed;
    }

    public double getEngineFuelRate() {
        return engineFuelRate;
    }

    public void setEngineFuelRate(double engineFuelRate) {
        this.engineFuelRate = engineFuelRate;
    }

    public double getEngineTotalFuelUsed() {
        return engineTotalFuelUsed;
    }

    public void setEngineTotalFuelUsed(double engineTotalFuelUsed) {
        this.engineTotalFuelUsed = engineTotalFuelUsed;
    }

    public int getBrakeSwitch() {
        return brakeSwitch;
    }

    public void setBrakeSwitch(int brakeSwitch) {
        this.brakeSwitch = brakeSwitch;
    }

    public int getWheelBasedVehicleSpeed() {
        return wheelBasedVehicleSpeed;
    }

    public void setWheelBasedVehicleSpeed(int wheelBasedVehicleSpeed) {
        this.wheelBasedVehicleSpeed = wheelBasedVehicleSpeed;
    }

    public double getTotalVehicleDistance() {
        return totalVehicleDistance;
    }

    public void setTotalVehicleDistance(double totalVehicleDistance) {
        this.totalVehicleDistance = totalVehicleDistance;
    }

    public int getThrottleValve() {
        return throttleValve;
    }

    public void setThrottleValve(int throttleValve) {
        this.throttleValve = throttleValve;
    }

    public int getEngineCoolantTemperature() {
        return engineCoolantTemperature;
    }

    public void setEngineCoolantTemperature(int engineCoolantTemperature) {
        this.engineCoolantTemperature = engineCoolantTemperature;
    }

    public int getFuelPressure() {
        return fuelPressure;
    }

    public void setFuelPressure(int fuelPressure) {
        this.fuelPressure = fuelPressure;
    }

    public double getManifoldAbsolutePressure() {
        return manifoldAbsolutePressure;
    }

    public void setManifoldAbsolutePressure(double manifoldAbsolutePressure) {
        this.manifoldAbsolutePressure = manifoldAbsolutePressure;
    }

    public int getTheEngineInletTemperature() {
        return theEngineInletTemperature;
    }

    public void setTheEngineInletTemperature(int theEngineInletTemperature) {
        this.theEngineInletTemperature = theEngineInletTemperature;
    }

    public double getAirFlow() {
        return airFlow;
    }

    public void setAirFlow(double airFlow) {
        this.airFlow = airFlow;
    }

    public int getSolarTermDoorPositionSensor() {
        return solarTermDoorPositionSensor;
    }

    public void setSolarTermDoorPositionSensor(int solarTermDoorPositionSensor) {
        this.solarTermDoorPositionSensor = solarTermDoorPositionSensor;
    }

    public long getEngineRuntimes() {
        return engineRuntimes;
    }

    public void setEngineRuntimes(long engineRuntimes) {
        this.engineRuntimes = engineRuntimes;
    }

    public int getTravelOilMass() {
        return travelOilMass;
    }

    public void setTravelOilMass(int travelOilMass) {
        this.travelOilMass = travelOilMass;
    }

    @Override
    public String toString() {
        StringBuffer sb = new StringBuffer();
        sb.append(", 数据体 [采集时间:").append(gatherTime);
        sb.append(", ON线状态:").append(onLineStatus);
        sb.append(", 压缩机线状态:").append(compressorLineStatus);
        sb.append(", 门磁线状态:").append(magnetometerLineStatus);
        sb.append(", 硬件版本号:").append(hdVer);
        sb.append(", 软件版本:").append(softVer);
        sb.append(", 协议版本号:").append(protocolVer);
        sb.append(", EMS总线配置状态 CAN0:").append(emsBusCfgStatusCAN0);
        sb.append(", EMS总线配置状态 CAN1:").append(emsBusCfgStatusCAN1);
        sb.append(", EMS总线配置状态 K线:").append(emsBusCfgStatusKline);
        sb.append(", EMS总线配置状态 RS485线:").append(emsBusCfgStatusRs485Line);
        sb.append(", EMS总线原始数据获取状态 CAN0:").append(emsOrgiDataGetStatusCAN0);
        sb.append(", EMS总线原始数据获取状态 CAN1:").append(emsOrgiDataGetStatusCAN1);
        sb.append(", EMS总线原始数据获取状态  K线:").append(emsOrgiDataGetStatusKline);
        sb.append(", EMS总线原始数据获取状态 RS485线:").append(emsOrgiDataGetStatusRs485Line);
        sb.append(", 转速:").append(engineSpeed);
        sb.append(", 发动机瞬时油耗:").append(engineFuelRate);
        sb.append(", 发动机总油耗:").append(engineTotalFuelUsed);
        sb.append(", 刹车:").append(brakeSwitch);
        sb.append(", 车速:").append(wheelBasedVehicleSpeed);
        sb.append(", 总里程:").append(totalVehicleDistance);
        sb.append(", 节流阀(油门强度):").append(throttleValve);
        sb.append(", 发动机冷却液温度:").append(engineCoolantTemperature);
        sb.append(", 燃油压力:").append(fuelPressure);
        sb.append(", 进气歧管绝对压力:").append(manifoldAbsolutePressure);
        sb.append(", 发动机进气口温度:").append(theEngineInletTemperature);
        sb.append(", 空气流量:").append(airFlow);
        sb.append(", 节气门位置传感器:").append(solarTermDoorPositionSensor);
        sb.append(", 发动机启动后运行时间:").append(engineRuntimes);
        sb.append(", 冲程油量:").append(travelOilMass);
        sb.append("]");

        return sb.toString();
    }
}
